﻿using Domain.Core;
using System.Linq;

namespace Application.Interfaces.Repository
{
    public interface IRepository<T> where T : BaseEntity
    {
        T FindById(int id);

        IQueryable<T> FindAsNoTracking();

        IQueryable<T> Find();

        void Add(T entity);

        void Remove(T entity);

        int SaveChanges();
    }
}